In recent times, the Internet and the World Wide Web (WWW or web) have allowed computer or web users access to a great wealth of information. In particular, the WWW has allowed Internet users access to almost unlimited information and web content (e.g., links, web pages, banner ads, editorial information, merchandise, graphics, videos, etc.). One problem associated with the enormity of web content is that it has become increasingly difficult for a user to sort through the available content to find that which is both relevant and compelling to the user. Additionally, this plethora of web content may overwhelm a web user. However, while many web users do not want to be overwhelmed with web content, they also do not want to feel unduly limited in their access to web content.
In response or in reaction to these problems, many web users are becoming increasingly selective and specific about the web content they seek out and the manner in which web content is presented to them. To address this increase in user selectivity, web content providers have adopted a number of techniques or methods to help determine or select content which is relevant to a particular web user and to present or deliver this content to the user.
One approach to selecting relevant web content involves the use of what are commonly referred to as recommendation systems. Recommendation systems typically employ statistics-based and/or knowledge-based discovery techniques to select content for delivery to a web user during live user interactions on a website. One of the most widely used methods or algorithms employed by recommendation systems in selecting content for delivery to a web user is collaborative filtering. Recommendation systems that employ collaborative filtering methods are typically referred to as “collaborative filtering systems.” Collaborative filtering systems attempt to predict the preferences of a user based on known attributes of that user as compared with known attributes and preferences of other users. Many collaborative filtering systems gather such user information by either explicitly asking for the information or by having the user rate web content. This information is then stored within a user profile. To identify content that may be relevant to a particular user, the collaborative filtering system then correlates the user's profile to the profiles of other users to identify users with similar likes or preferences. The collaborative filtering system then provides content to that particular user based on those similar preferences. The content is typically provided to the user in the form of hypertext links, pop-up windows, advertisements, and the like.
As noted, collaborative filtering systems of this type require a user to be identified, so that the user's profile may be compared to other user's profiles. This identification may be done overtly, such as by having a user identify themselves at the time they enter a website, or covertly, such as by placing a “cookie” on the user's computer system. While collaborative filtering systems of this type can be quite effective in certain web environments and with certain web users, there are a number other situations where this type of system may be ineffective.
First, this type of system is typically ineffective with web users who do not wish to be identified on the web. Many web users consider user identification on websites to be an invasion of privacy. Often times, these users will exit, and will not return to, a website that requires them to be identified. As such, websites employing overt user identification techniques are necessarily limited to attracting web visits from only those users who will freely identify themselves. Furthermore, for those systems which use cookies to covertly identify a user, there may still be problems associated with identifying a user. For example, many users find cookies to be intrusive and/or disruptive to their systems and, therefore, will configure their computer systems to prevent the placement of cookies thereon. Furthermore, often times administrators of large networks will set firewalls to prevent cookies from being placed on the computers on their network. If the cookie cannot be placed on the user's systems, collaborative filtering systems which use cookies to identify or track users will not be effective in selecting relevant content for a user, and in some cases will not function at all.
Secondly, as noted above, some collaborative filtering systems gather user information by having a user rate web content at some point in their visit to a website. While these types of systems may avoid the problems discussed above with respect to identifying a user, these systems typically have other problems associated therewith. For example, as is known, the amount of time a user spends on a website is typically limited, often times to only a few minutes or seconds. As such, every second a user spends viewing the content of the website is valuable to the operator of the website. By requiring users of a website to take the time to rate web content, these systems often reduce the amount of time that a user would normally spend viewing the content of the website. This “lost time” is often detrimental to the operator of the website. For example, this “lost time” may translate to lost sales on a website.
Another problem associated with collaborative filtering systems which require a user to rate web content is that many users simply do not wish to take the time to rate the web content. In fact, many users will exit a website rather than take the time to complete these types of tasks.
Yet another problem associated with collaborative filtering systems which use web content rating is that the content rating process typically relates to one particular field of interest such as, for example, books or movies. As such, collaborative filtering systems employing content rating are usually effective only when a user is accessing web pages related to that particular field of interest. The systems are typically ineffective when the user “changes course” and accesses web pages not directly related to the field of interest to which the content rating process is related.
While many collaborative filtering systems gather user information by explicitly asking for the information or by having the user rate web content, other types of collaborative filtering systems do not use, or limit the use of, cookies or web content ratings. Rather, these types of collaborative filtering systems typically keep track of individual user sessions during a single visit to a website. That is, all activities related to a single user session on the website are gathered and this information is used to identify or predict the preferences of the user without requiring identification of the specific user. While these types of collaborative filtering systems can be very effective for a given type of product, subject matter, and/or web user, they typically are not effective for websites having a diversity of products, subject matter, and/or users. Additionally, while a given collaborative filtering system of this type may be effective over a given period of time, trends in web usage or user behavior may decrease the effectiveness of the system during other periods of time. That is, the effectiveness of these types of systems may ebb and wane over the course of time.
Another approach to recommending web content and, in particular to recommending advertisements to be displayed on a user's computer, involves the use of an advertising server employing an affinity engine. In general, affinity engines used in advertising servers select advertisements for delivery to web users based on a user's inclusion in one or more affinity groups. The term affinity group typically refers to a group of web users having similar preferences or characteristics. In typical systems of this type, one user may be associated with a number of different demographic groups. For example, one demographic group may relate to a specific geographic area while another demographic group may relate to interest in a particular subject matter, etc. The function of an affinity engine is to associate a user with one or more affinity or demographic groups and to deliver advertisements to the user that are targeted to the particular group or groups in which the user is a member.
One variation on the single affinity engine advertisement server employs the use of a number of affinity engines and a control program for controlling the selection of the advertisements from the affinity engines. In one such system, each of the affinity engines employed by the system determines advertisements based on user request information. Each affinity engine in this type of advertisement server may use different request information, such as demographic information, page sponsor information, keyword sponsor information, and type of web browser, etc., to determine appropriate advertisements for delivery to the user. The advertisements recommended by the various affinity engines are then given an affinity value indicative of the affinity of the advertisement with user characteristics or request information. Additionally, the affinity value of an advertisement may be adjusted in various ways. For example, the advertisements recommended by one affinity engine may be adjusted based on whether that advertisement has been recommended by another engine.
As with collaborative filtering systems, advertising servers employing affinity engines, whether single or multiple affinity engines, typically require some identification of the user before appropriate advertisements may be selected for delivery to the user. This identification may occur, as described above, either overtly or covertly. Again, as with collaborative filtering systems, due to this requirement of user identification, advertisement servers employing affinity engines of this type are often ineffective in recommending content for users who either do not wish to go through the profile building process and/or for users who wish to remain anonymous.
Systems such as those using collaborative filtering or affinity engines are generally most effective in determining or predicting content that is relevant to a given user when the system has acquired a significant amount of information regarding the user's past behavior and interests. However, systems that rely on past user behavior to predict future user desires or needs may be ineffective in certain situations. For example, when a user is shopping for items for another individual, when a user's tastes or needs change, or when a sufficient amount of information regarding the user's past behavior has not been acquired by the system, such as with a new user of the system.
It is with respect to this and other background information that the present invention has evolved.